//
//  MRMessage.h
//  McRemoteServer
//
//  Created by Magic on 1/9/12.
//  Copyright (c) 2012 __MyCompanyName__. All rights reserved.
//

#ifndef McRemoteServer_MRMessage_h
#define McRemoteServer_MRMessage_h



typedef enum {
    kTypeMacOSVersion        = 0x00,
    kTypeKeyStroke           = 0x01,
    kTypeKeyStrokeWithFlag   = 0x02,

    kTypeBinaryData          = 0x03,
    kTypeLeftMouseClick      = 0x04,
    kTypeRightMouseClick     = 0x05,
    kTypeMouseMove           = 0x06,
    kTypeMouseWheelScroll    = 0x07,
    kTypeNeedDockInfo        = 0x08,
    kTypeIsRetina            = 0x09,
    
    kTypeVolumeUp            = 0x0A,
    kTypeVolumeDown          = 0x0B,
    kTypeFinderMode          = 0x0C
    
} MRMessageType;

typedef enum {
    kTypeAppIcon             = 0x100,
    kTypeClientDeviceName    ,
    kTypeLaunchApp           ,
    kTypeDockAppName         ,
    kTypeActiveApplication   ,
    kTypeLaunchedAppName     ,
    kTypeTerminateAppName
    
} MRBinaryType;

typedef enum {
    kListMode,
    kIconMode,
    kColumnMode,
    kCoverflowMode
    
} MRFinderMode;

#define kMessageTypeLength sizeof(UInt32)                  //type
#define kMessageBinarySizeLength sizeof(UInt32)            //binary length

#define kMessageMacOSVersionLength 2*sizeof(UInt32)        //major,minor

#define kMessageIsRetinaLength sizeof(UInt32)              //1 or 0

#endif
